Add performance testing scripts for DTypeFront#2005
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces two new scripts: a Python script (dtypefront_perf_table.py) to parse benchmark logs and generate a performance table, and a Slurm script (dtypefront_gpu_sweep.submit) to run a GPU sweep across different microphysics integrators. Feedback on the Python script highlights potential regex matching failures due to leading whitespace in nested timers, a possible division-by-zero error when subcycles are zero, and compatibility issues with zip(..., strict=True) on older Python versions. Additionally, for the Slurm script, it is recommended to remove an unused parameter from the execution command.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
for more information, see https://pre-commit.ci
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7acf74359c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| local build_dir="$1" | ||
| local integrator="$2" | ||
|
|
||
| cmake -S "${ROOT_DIR}" -B "${build_dir}" -DDTypeFront_INTEGRATOR="${integrator}" -DAMReX_GPU_BACKEND=CUDA -DAMReX_GPU_ARCH=9.0 -DAMReX_SPACEDIM=3 |
There was a problem hiding this comment.
Build the CUDA sweep in Release mode
For a fresh build directory this cmake invocation leaves CMAKE_BUILD_TYPE unset; the top-level project does not provide a Release default, while the Frontier sweep explicitly passes -DCMAKE_BUILD_TYPE=Release. Since this script is intended to produce performance numbers, the generic CUDA/H200 sweep can benchmark unoptimized binaries and produce misleading or much slower results unless the user happens to reuse a preconfigured Release directory.
Useful? React with 👍 / 👎.
Description
Adds performance-testing scripts for the
DTypeFrontproblem with varying integrators.These are the printed results using the built-in script on H200:
On Frontier, I get:
Related issues
N/A
Checklist
Before this pull request can be reviewed, all of these tasks should be completed. Denote completed tasks with an
xinside the square brackets[ ]in the Markdown source below:/azp run.